; Disassembly of the file "z:\ramdisk\home\knoppix\none\STD_TEST_2K_COBRA_64K.bin" ; ; CPU Type: Z80 ; ; Using the opcode map file "z:\ramdisk\home\knoppix\none\STD_TEST_2K_COBRA_64K.opmap" ; ; Created with dZ80 2.0 ; ; on Thursday, 16 of May 2013 at 10:13 PM ; ; Lines that must to be modified for this code to run relocated have been marked with ---@@@ ; Lines that must to be modified for this code to run ; on both CoBra 64K and CoBra 80K have been marked with ---*** ; For CoBra 80K, O6 must be set to 1 before starting this test ROM. ; This is solved if running this ROM from the Boot Manager. 0000 3E80 LD A,$80 0002 ED4F LD R,A 0004 31FFDF LD SP,$DFFF ; stack at DFFF 0007 2100C0 LD HL,$C000 000A 1101C0 LD DE,$C001 000D 01FF1A LD BC,$1AFF 0010 3600 LD (HL),$00 0012 EDB0 LDIR ; clear screen to black 0014 2100D9 LD HL,$D900 0017 01FF00 LD BC,$00FF 001A 1101D9 LD DE,$D901 001D 3607 LD (HL),$07 001F EDB0 LDIR ; horizontal white line 0021 3E92 LD A,$92 0023 D3DF OUT ($DF),A ; init 8255 ports A & B as input and C as output 0025 3E40 LD A,$40 ; ---***0026:40->C0 SO=1 O6=1 0027 D3FE OUT ($FE),A ; 8255 -> set O6=1 0029 011000 LD BC,$0010 002C 1108DA LD DE,$DA08 002F 21B400 LD HL,$00B4 ; 16 byte data block at 00B4 ---@@@0031:00->20 0032 EDB0 LDIR ; write data on screen 0034 218BCE LD HL,$CE8B 0037 CD7A00 CALL $007A ; fill 10 bytes at CE8B with C=10h ---@@@0039:00->20 003A 21ABCF LD HL,$CFAB 003D CD7A00 CALL $007A ; fill 10 bytes at CFAB with C=10h ---@@@003F:00->20 0040 11ABC8 LD DE,$C8AB 0043 D5 PUSH DE 0044 21C400 LD HL,$00C4 ; 6x10 byte data block at 00C4 ---@@@0046:00->20 0047 3E06 LD A,$06 0049 CD8200 CALL $0082 ; copy 10 bytes from 00C4 to C8AB <-| ---@@@004B:00->20 004C D1 POP DE ; | 004D 14 INC D ; and then to C9AB,CAAB,CBAB... | 004E D5 PUSH DE ; | 004F 3D DEC A ; | 0050 20F7 JR NZ,$0049 ; ---> A=6 loops ---> ---> ---> --->| 0052 116DC8 LD DE,$C86D 0055 D5 PUSH DE 0056 210001 LD HL,$0100 ; 8x6 byte data block at 0100 ---@@@0058:01->21 0059 3E08 LD A,$08 005B CD8800 CALL $0088 ; copy 6 bytes from 0100 to C86D <--| ---@@@005D:00->20 005E D1 POP DE ; | 005F 14 INC D ; and then to C96D,CA6D,CB6D... | 0060 D5 PUSH DE ; | 0061 3D DEC A ; | 0062 20F7 JR NZ,$005B ; ---> A=8 loops ---> ---> ---> --->+ 0064 3EF7 LD A,$F7 ; test kbd line KA11 (1,2,3,4,5) <--+ 0066 DBFE IN A,($FE) ; | 0068 F6C0 OR $C0 ; set bits K6,K7 to 1 | 006A FEFE CP $FE ; test if "1" pressed (bit K0) | 006C 2820 JR Z,$008E ; if so, load BASIC from ROM | 006E FEFD CP $FD ; test if "2" pressed (bit K1) | 0070 283B JR Z,$00AD ; if so, load OPUS from ROM | 0072 FEFB CP $FB ; test if "3" pressed (bit K2) | 0074 CA3001 JP Z,$0130 ; if so, go to hardware tests | ---@@@0076:01->21 0077 C36400 JP $0064 ; ---> ---> ---> ---> ---> ---> --->| ---@@@0079:00->20 007A 01FF0A LD BC,$0AFF 007D 71 LD (HL),C 007E 23 INC HL 007F 10FC DJNZ $007D 0081 C9 RET ; ######## LDIR1 ######## 0082 010A00 LD BC,$000A 0085 EDB0 LDIR 0087 C9 RET ; ######## LDIR2 ######## 0088 010600 LD BC,$0006 008B EDB0 LDIR 008D C9 RET ; ######## BASIC loading 008E 210040 LD HL,$4000 0091 110080 LD DE,$8000 0094 010020 LD BC,$2000 ; ---***0096:20->40 0097 EDB0 LDIR 0099 210060 LD HL,$6000 009C 1100E0 LD DE,$E000 009F 010020 LD BC,$2000 00A2 EDB0 LDIR 00A4 210000 LD HL,$0000 ; ------- entry point to BASIC cfg 00A7 AF XOR A ; A=00 00A8 D3FE OUT ($FE),A ; O6=0 00AA ED4F LD R,A ; reset R bit 7, change config to BASIC hw cfg 00AC E9 JP (HL) ; jump to 0000 in BASIC 00AD 3E41 LD A,$41 ; ######## OPUS loading, selection by BORDER bit 0 ---***00AE:41->00 SO=0 O6=0 00AF D3FE OUT ($FE),A ; O6=1, border=blue 00B1 C38E00 JP $008E ; ---@@@00B3:00->20 ; ######## DATA BLOCK ######## 00B4 07 DB $07 00B5 0E DB $0E 00B6 15 DB $15 00B7 1C DB $1C 00B8 23 DB $23 00B9 2A DB $2A 00BA 31 DB $31 00BB 38 DB $38 00BC 38 DB $38 00BD 31 DB $31 00BE 2A DB $2A 00BF 23 DB $23 00C0 1C DB $1C 00C1 15 DB $15 00C2 0E DB $0E 00C3 07 DB $07 00C4 1F DB $1F 00C5 F8 DB $F8 00C6 1F DB $1F 00C7 F8 DB $F8 00C8 7F DB $7F 00C9 F8 DB $F8 00CA 7F DB $7F 00CB F8 DB $F8 00CC 1F DB $1F 00CD F8 DB $F8 00CE 78 DB $78 00CF 1E DB $1E 00D0 78 DB $78 00D1 1E DB $1E 00D2 78 DB $78 00D3 1E DB $1E 00D4 78 DB $78 00D5 1E DB $1E 00D6 78 DB $78 00D7 1E DB $1E 00D8 78 DB $78 00D9 00 DB $00 00DA 78 DB $78 00DB 1E DB $1E 00DC 7F DB $7F 00DD F8 DB $F8 00DE 78 DB $78 00DF 1E DB $1E 00E0 78 DB $78 00E1 1E DB $1E 00E2 78 DB $78 00E3 00 DB $00 00E4 78 DB $78 00E5 1E DB $1E 00E6 78 DB $78 00E7 1E DB $1E 00E8 7F DB $7F 00E9 F8 DB $F8 00EA 7F DB $7F 00EB FE DB $FE 00EC 78 DB $78 00ED 1E DB $1E 00EE 78 DB $78 00EF 1E DB $1E 00F0 78 DB $78 00F1 1E DB $1E 00F2 78 DB $78 00F3 78 DB $78 00F4 78 DB $78 00F5 1E DB $1E 00F6 1F DB $1F 00F7 F8 DB $F8 00F8 1F DB $1F 00F9 F8 DB $F8 00FA 7F DB $7F 00FB F8 DB $F8 00FC 78 DB $78 00FD 1E DB $1E 00FE 78 DB $78 00FF 1E DB $1E 0100 00 DB $00 0101 00 DB $00 0102 01 DB $01 0103 80 DB $80 0104 00 DB $00 0105 00 DB $00 0106 00 DB $00 0107 00 DB $00 0108 01 DB $01 0109 80 DB $80 010A 00 DB $00 010B 00 DB $00 010C 00 DB $00 010D 3F DB $3F 010E F9 DB $F9 010F 9F DB $9F 0110 FC DB $FC 0111 00 DB $00 0112 01 DB $01 0113 FF DB $FF 0114 F9 DB $F9 0115 9F DB $9F 0116 FF DB $FF 0117 80 DB $80 0118 03 DB $03 0119 E0 DB $E0 011A 01 DB $01 011B 80 DB $80 011C 07 DB $07 011D C0 DB $C0 011E 03 DB $03 011F E0 DB $E0 0120 01 DB $01 0121 80 DB $80 0122 07 DB $07 0123 C0 DB $C0 0124 01 DB $01 0125 FF DB $FF 0126 F9 DB $F9 0127 9F DB $9F 0128 FF DB $FF 0129 80 DB $80 012A 00 DB $00 012B 3F DB $3F 012C F9 DB $F9 012D 9F DB $9F 012E FC DB $FC 012F 00 DB $00 ; ######### HARDWARE TESTS ########## 0130 210080 LD HL,$8000 0133 110180 LD DE,$8001 0136 36FF LD (HL),$FF 0138 01FF07 LD BC,$07FF 013B EDB0 LDIR ; fill addr range 8000-8800 with FF 013D 212A03 LD HL,$032A ; ---@@@013F:03->23 0140 110080 LD DE,$8000 0143 011E04 LD BC,$041E 0146 EDB0 LDIR ; copy 41Eh bytes from 032A-0747 to 8000-841E (code block #1) 0148 214807 LD HL,$0748 ; ---@@@014A:07->27 014B 110085 LD DE,$8500 014E 018800 LD BC,$0088 0151 EDB0 LDIR ; copy 88h bytes from 0748-07CF to 8500-8587 (data block #2) 0153 21D007 LD HL,$07D0 ; ---@@@0155:07->27 0156 110086 LD DE,$8600 0159 013000 LD BC,$0030 015C EDB0 LDIR ; copy 30h bytes from 07D0-07FF to 8600-862F (data block #3) 015E C3A400 JP $00A4 ; change to BASIC hardware config ---@@@0160:00->20 0161 FF DB $FF ; ######## EMPTY SPACE ######## 0162 FF DB $FF 0163 FF DB $FF 0164 FF DB $FF 0165 FF DB $FF 0166 FF DB $FF 0167 FF DB $FF 0168 FF DB $FF 0169 FF DB $FF 016A FF DB $FF 016B FF DB $FF 016C FF DB $FF 016D FF DB $FF 016E FF DB $FF 016F FF DB $FF 0170 FF DB $FF 0171 FF DB $FF 0172 FF DB $FF 0173 FF DB $FF 0174 FF DB $FF 0175 FF DB $FF 0176 FF DB $FF 0177 FF DB $FF 0178 FF DB $FF 0179 FF DB $FF 017A FF DB $FF 017B FF DB $FF 017C FF DB $FF 017D FF DB $FF 017E FF DB $FF 017F FF DB $FF 0180 FF DB $FF 0181 FF DB $FF 0182 FF DB $FF 0183 FF DB $FF 0184 FF DB $FF 0185 FF DB $FF 0186 FF DB $FF 0187 FF DB $FF 0188 FF DB $FF 0189 FF DB $FF 018A FF DB $FF 018B FF DB $FF 018C FF DB $FF 018D FF DB $FF 018E FF DB $FF 018F FF DB $FF 0190 FF DB $FF 0191 FF DB $FF 0192 FF DB $FF 0193 FF DB $FF 0194 FF DB $FF 0195 FF DB $FF 0196 FF DB $FF 0197 FF DB $FF 0198 FF DB $FF 0199 FF DB $FF 019A FF DB $FF 019B FF DB $FF 019C FF DB $FF 019D FF DB $FF 019E FF DB $FF 019F FF DB $FF 01A0 FF DB $FF 01A1 FF DB $FF 01A2 FF DB $FF 01A3 FF DB $FF 01A4 FF DB $FF 01A5 FF DB $FF 01A6 FF DB $FF 01A7 FF DB $FF 01A8 FF DB $FF 01A9 FF DB $FF 01AA FF DB $FF 01AB FF DB $FF 01AC FF DB $FF 01AD FF DB $FF 01AE FF DB $FF 01AF FF DB $FF 01B0 FF DB $FF 01B1 FF DB $FF 01B2 FF DB $FF 01B3 FF DB $FF 01B4 FF DB $FF 01B5 FF DB $FF 01B6 FF DB $FF 01B7 FF DB $FF 01B8 FF DB $FF 01B9 FF DB $FF 01BA FF DB $FF 01BB FF DB $FF 01BC FF DB $FF 01BD FF DB $FF 01BE FF DB $FF 01BF FF DB $FF 01C0 FF DB $FF 01C1 FF DB $FF 01C2 FF DB $FF 01C3 FF DB $FF 01C4 FF DB $FF 01C5 FF DB $FF 01C6 FF DB $FF 01C7 FF DB $FF 01C8 FF DB $FF 01C9 FF DB $FF 01CA FF DB $FF 01CB FF DB $FF 01CC FF DB $FF 01CD FF DB $FF 01CE FF DB $FF 01CF FF DB $FF 01D0 FF DB $FF 01D1 FF DB $FF 01D2 FF DB $FF 01D3 FF DB $FF 01D4 FF DB $FF 01D5 FF DB $FF 01D6 FF DB $FF 01D7 FF DB $FF 01D8 FF DB $FF 01D9 FF DB $FF 01DA FF DB $FF 01DB FF DB $FF 01DC FF DB $FF 01DD FF DB $FF 01DE FF DB $FF 01DF FF DB $FF 01E0 FF DB $FF 01E1 FF DB $FF 01E2 FF DB $FF 01E3 FF DB $FF 01E4 FF DB $FF 01E5 FF DB $FF 01E6 FF DB $FF 01E7 FF DB $FF 01E8 FF DB $FF 01E9 FF DB $FF 01EA FF DB $FF 01EB FF DB $FF 01EC FF DB $FF 01ED FF DB $FF 01EE FF DB $FF 01EF FF DB $FF 01F0 FF DB $FF 01F1 FF DB $FF 01F2 FF DB $FF 01F3 FF DB $FF 01F4 FF DB $FF 01F5 FF DB $FF 01F6 FF DB $FF 01F7 FF DB $FF 01F8 FF DB $FF 01F9 FF DB $FF 01FA FF DB $FF 01FB FF DB $FF 01FC FF DB $FF 01FD FF DB $FF 01FE FF DB $FF 01FF FF DB $FF 0200 FF DB $FF 0201 FF DB $FF 0202 FF DB $FF 0203 FF DB $FF 0204 FF DB $FF 0205 FF DB $FF 0206 FF DB $FF 0207 FF DB $FF 0208 FF DB $FF 0209 FF DB $FF 020A FF DB $FF 020B FF DB $FF 020C FF DB $FF 020D FF DB $FF 020E FF DB $FF 020F FF DB $FF 0210 FF DB $FF 0211 FF DB $FF 0212 FF DB $FF 0213 FF DB $FF 0214 FF DB $FF 0215 FF DB $FF 0216 FF DB $FF 0217 FF DB $FF 0218 FF DB $FF 0219 FF DB $FF 021A FF DB $FF 021B FF DB $FF 021C FF DB $FF 021D FF DB $FF 021E FF DB $FF 021F FF DB $FF 0220 FF DB $FF 0221 FF DB $FF 0222 FF DB $FF 0223 FF DB $FF 0224 FF DB $FF 0225 FF DB $FF 0226 FF DB $FF 0227 FF DB $FF 0228 FF DB $FF 0229 FF DB $FF 022A FF DB $FF 022B FF DB $FF 022C FF DB $FF 022D FF DB $FF 022E FF DB $FF 022F FF DB $FF 0230 FF DB $FF 0231 FF DB $FF 0232 FF DB $FF 0233 FF DB $FF 0234 FF DB $FF 0235 FF DB $FF 0236 FF DB $FF 0237 FF DB $FF 0238 FF DB $FF 0239 FF DB $FF 023A FF DB $FF 023B FF DB $FF 023C FF DB $FF 023D FF DB $FF 023E FF DB $FF 023F FF DB $FF 0240 FF DB $FF 0241 FF DB $FF 0242 FF DB $FF 0243 FF DB $FF 0244 FF DB $FF 0245 FF DB $FF 0246 FF DB $FF 0247 FF DB $FF 0248 FF DB $FF 0249 FF DB $FF 024A FF DB $FF 024B FF DB $FF 024C FF DB $FF 024D FF DB $FF 024E FF DB $FF 024F FF DB $FF 0250 FF DB $FF 0251 FF DB $FF 0252 FF DB $FF 0253 FF DB $FF 0254 FF DB $FF 0255 FF DB $FF 0256 FF DB $FF 0257 FF DB $FF 0258 FF DB $FF 0259 FF DB $FF 025A FF DB $FF 025B FF DB $FF 025C FF DB $FF 025D FF DB $FF 025E FF DB $FF 025F FF DB $FF 0260 FF DB $FF 0261 FF DB $FF 0262 FF DB $FF 0263 FF DB $FF 0264 FF DB $FF 0265 FF DB $FF 0266 FF DB $FF 0267 FF DB $FF 0268 FF DB $FF 0269 FF DB $FF 026A FF DB $FF 026B FF DB $FF 026C FF DB $FF 026D FF DB $FF 026E FF DB $FF 026F FF DB $FF 0270 FF DB $FF 0271 FF DB $FF 0272 FF DB $FF 0273 FF DB $FF 0274 FF DB $FF 0275 FF DB $FF 0276 FF DB $FF 0277 FF DB $FF 0278 FF DB $FF 0279 FF DB $FF 027A FF DB $FF 027B FF DB $FF 027C FF DB $FF 027D FF DB $FF 027E FF DB $FF 027F FF DB $FF 0280 FF DB $FF 0281 FF DB $FF 0282 FF DB $FF 0283 FF DB $FF 0284 FF DB $FF 0285 FF DB $FF 0286 FF DB $FF 0287 FF DB $FF 0288 FF DB $FF 0289 FF DB $FF 028A FF DB $FF 028B FF DB $FF 028C FF DB $FF 028D FF DB $FF 028E FF DB $FF 028F FF DB $FF 0290 FF DB $FF 0291 FF DB $FF 0292 FF DB $FF 0293 FF DB $FF 0294 FF DB $FF 0295 FF DB $FF 0296 FF DB $FF 0297 FF DB $FF 0298 FF DB $FF 0299 FF DB $FF 029A FF DB $FF 029B FF DB $FF 029C FF DB $FF 029D FF DB $FF 029E FF DB $FF 029F FF DB $FF 02A0 FF DB $FF 02A1 FF DB $FF 02A2 FF DB $FF 02A3 FF DB $FF 02A4 FF DB $FF 02A5 FF DB $FF 02A6 FF DB $FF 02A7 FF DB $FF 02A8 FF DB $FF 02A9 FF DB $FF 02AA FF DB $FF 02AB FF DB $FF 02AC FF DB $FF 02AD FF DB $FF 02AE FF DB $FF 02AF FF DB $FF 02B0 FF DB $FF 02B1 FF DB $FF 02B2 FF DB $FF 02B3 FF DB $FF 02B4 FF DB $FF 02B5 FF DB $FF 02B6 FF DB $FF 02B7 FF DB $FF 02B8 FF DB $FF 02B9 FF DB $FF 02BA FF DB $FF 02BB FF DB $FF 02BC FF DB $FF 02BD FF DB $FF 02BE FF DB $FF 02BF FF DB $FF 02C0 FF DB $FF 02C1 FF DB $FF 02C2 FF DB $FF 02C3 FF DB $FF 02C4 FF DB $FF 02C5 FF DB $FF 02C6 FF DB $FF 02C7 FF DB $FF 02C8 FF DB $FF 02C9 FF DB $FF 02CA FF DB $FF 02CB FF DB $FF 02CC FF DB $FF 02CD FF DB $FF 02CE FF DB $FF 02CF FF DB $FF 02D0 FF DB $FF 02D1 FF DB $FF 02D2 FF DB $FF 02D3 FF DB $FF 02D4 FF DB $FF 02D5 FF DB $FF 02D6 FF DB $FF 02D7 FF DB $FF 02D8 FF DB $FF 02D9 FF DB $FF 02DA FF DB $FF 02DB FF DB $FF 02DC FF DB $FF 02DD FF DB $FF 02DE FF DB $FF 02DF FF DB $FF 02E0 FF DB $FF 02E1 FF DB $FF 02E2 FF DB $FF 02E3 FF DB $FF 02E4 FF DB $FF 02E5 FF DB $FF 02E6 FF DB $FF 02E7 FF DB $FF 02E8 FF DB $FF 02E9 FF DB $FF 02EA FF DB $FF 02EB FF DB $FF 02EC FF DB $FF 02ED FF DB $FF 02EE FF DB $FF 02EF FF DB $FF 02F0 FF DB $FF 02F1 FF DB $FF 02F2 FF DB $FF 02F3 FF DB $FF 02F4 FF DB $FF 02F5 FF DB $FF 02F6 FF DB $FF 02F7 FF DB $FF 02F8 FF DB $FF 02F9 FF DB $FF 02FA FF DB $FF 02FB FF DB $FF 02FC FF DB $FF 02FD FF DB $FF 02FE FF DB $FF 02FF FF DB $FF 0300 FF DB $FF 0301 FF DB $FF 0302 FF DB $FF 0303 FF DB $FF 0304 FF DB $FF 0305 FF DB $FF 0306 FF DB $FF 0307 FF DB $FF 0308 FF DB $FF 0309 FF DB $FF 030A FF DB $FF 030B FF DB $FF 030C FF DB $FF 030D FF DB $FF 030E FF DB $FF 030F FF DB $FF 0310 FF DB $FF 0311 FF DB $FF 0312 FF DB $FF 0313 FF DB $FF 0314 FF DB $FF 0315 FF DB $FF 0316 FF DB $FF 0317 FF DB $FF 0318 FF DB $FF 0319 FF DB $FF 031A FF DB $FF 031B FF DB $FF 031C FF DB $FF 031D FF DB $FF 031E FF DB $FF 031F FF DB $FF 0320 FF DB $FF 0321 FF DB $FF 0322 FF DB $FF 0323 FF DB $FF 0324 FF DB $FF 0325 FF DB $FF 0326 FF DB $FF 0327 FF DB $FF 0328 FF DB $FF 0329 FF DB $FF ; ############# code block #1 ############### 032A F3 DI 032B AF XOR A 032C 2802 JR Z,$0330 032E 18FE JR $032E 0330 20FC JR NZ,$032E 0332 F20D00 JP P,$000D 0335 18F7 JR $032E 0337 FA0400 JP M,$0004 033A EA1500 JP PE,$0015 033D 18EF JR $032E 033F E20400 JP PO,$0004 0342 3002 JR NC,$0346 0344 18E8 JR $032E 0346 38E6 JR C,$032E 0348 3F CCF 0349 3802 JR C,$034D 034B 18E1 JR $032E 034D 30DF JR NC,$032E 034F 3E80 LD A,$80 0351 A7 AND A 0352 2002 JR NZ,$0356 0354 18D8 JR $032E 0356 28D6 JR Z,$032E 0358 FA3300 JP M,$0033 035B 18D1 JR $032E 035D F20400 JP P,$0004 0360 1804 JR $0366 0362 C9 RET 0363 FF RST $38 0364 FF RST $38 0365 FF RST $38 0366 E24100 JP PO,$0041 0369 18C3 JR $032E 036B EA0400 JP PE,$0004 036E 0E07 LD C,$07 0370 210040 LD HL,$4000 0373 71 LD (HL),C 0374 23 INC HL 0375 7C LD A,H 0376 FE5B CP $5B 0378 20F9 JR NZ,$0373 037A 210040 LD HL,$4000 037D 01FF00 LD BC,$00FF 0380 10FE DJNZ $0380 0382 71 LD (HL),C 0383 23 INC HL 0384 7C LD A,H 0385 FE58 CP $58 0387 20F7 JR NZ,$0380 0389 210040 LD HL,$4000 038C 010000 LD BC,$0000 038F 10FE DJNZ $038F 0391 71 LD (HL),C 0392 23 INC HL 0393 7C LD A,H 0394 FE58 CP $58 0396 20F7 JR NZ,$038F 0398 0E00 LD C,$00 039A 21005B LD HL,$5B00 039D 71 LD (HL),C 039E 7E LD A,(HL) 039F B9 CP C 03A0 208C JR NZ,$032E 03A2 23 INC HL 03A3 7C LD A,H 03A4 FE80 CP $80 03A6 20F5 JR NZ,$039D 03A8 0EFF LD C,$FF 03AA 21005F LD HL,$5F00 03AD 71 LD (HL),C 03AE 7E LD A,(HL) 03AF B9 CP C 03B0 C20400 JP NZ,$0004 03B3 23 INC HL 03B4 7C LD A,H 03B5 FE80 CP $80 03B7 20F4 JR NZ,$03AD 03B9 31005C LD SP,$5C00 03BC CDD203 CALL $03D2 03BF 21E058 LD HL,$58E0 03C2 0E0F LD C,$0F 03C4 71 LD (HL),C 03C5 23 INC HL 03C6 7C LD A,H 03C7 FE5A CP $5A 03C9 20F9 JR NZ,$03C4 03CB CDF403 CALL $03F4 03CE FE00 CP $00 03D0 2817 JR Z,$03E9 03D2 F5 PUSH AF 03D3 2659 LD H,$59 03D5 1605 LD D,$05 03D7 0628 LD B,$28 03D9 58 LD E,B 03DA 1D DEC E 03DB 1A LD A,(DE) 03DC 6F LD L,A 03DD 361F LD (HL),$1F 03DF 10F8 DJNZ $03D9 03E1 F1 POP AF 03E2 5F LD E,A 03E3 1A LD A,(DE) 03E4 6F LD L,A 03E5 363F LD (HL),$3F 03E7 18E2 JR $03CB 03E9 CDD203 CALL $03D2 03EC 0618 LD B,$18 03EE C5 PUSH BC 03EF C5 PUSH BC 03F0 0620 LD B,$20 03F2 F1 POP AF 03F3 3C INC A 03F4 F5 PUSH AF 03F5 CD9403 CALL $0394 03F8 10F8 DJNZ $03F2 03FA F1 POP AF 03FB CDB301 CALL $01B3 03FE C1 POP BC 03FF 10ED DJNZ $03EE 0401 CD1604 CALL $0416 0404 FE5A CP $5A 0406 20F9 JR NZ,$0401 0408 CDD203 CALL $03D2 040B AF XOR A 040C 210058 LD HL,$5800 040F 0618 LD B,$18 0411 4F LD C,A 0412 C5 PUSH BC 0413 112806 LD DE,$0628 0416 0608 LD B,$08 0418 1A LD A,(DE) 0419 13 INC DE 041A B1 OR C 041B 77 LD (HL),A 041C 23 INC HL 041D 77 LD (HL),A 041E 23 INC HL 041F 77 LD (HL),A 0420 23 INC HL 0421 77 LD (HL),A 0422 23 INC HL 0423 10F3 DJNZ $0418 0425 C1 POP BC 0426 10EA DJNZ $0412 0428 CD1604 CALL $0416 042B FE58 CP $58 042D 2810 JR Z,$043F 042F FE30 CP $30 0431 FAFE00 JP M,$00FE 0434 FE33 CP $33 0436 F2FE00 JP P,$00FE 0439 E603 AND $03 043B 0F RRCA 043C 0F RRCA 043D 18D0 JR $040F 043F 21035B LD HL,$5B03 0442 3680 LD (HL),$80 0444 23 INC HL 0445 36B0 LD (HL),$B0 0447 CD1604 CALL $0416 044A F5 PUSH AF 044B CDD203 CALL $03D2 044E CD5B03 CALL $035B 0451 F1 POP AF 0452 FE31 CP $31 0454 2827 JR Z,$047D 0456 FE32 CP $32 0458 2823 JR Z,$047D 045A FE41 CP $41 045C CA0C02 JP Z,$020C 045F FE42 CP $42 0461 282F JR Z,$0492 0463 FE47 CP $47 0465 CA8002 JP Z,$0280 0468 FE50 CP $50 046A 287B JR Z,$04E7 046C FE53 CP $53 046E CA4D02 JP Z,$024D 0471 FE57 CP $57 0473 CAC002 JP Z,$02C0 0476 FE49 CP $49 0478 CAE702 JP Z,$02E7 047B 18CA JR $0447 047D E603 AND $03 047F F5 PUSH AF 0480 CD8B03 CALL $038B 0483 F1 POP AF 0484 0F RRCA 0485 0F RRCA 0486 F680 OR $80 0488 21035B LD HL,$5B03 048B 77 LD (HL),A 048C C640 ADD A,$40 048E 23 INC HL 048F 77 LD (HL),A 0490 18B5 JR $0447 0492 0E00 LD C,$00 0494 CD8601 CALL $0186 0497 0E01 LD C,$01 0499 CD8601 CALL $0186 049C CB01 RLC C 049E 30F9 JR NC,$0499 04A0 0EFE LD C,$FE 04A2 CD8601 CALL $0186 04A5 CB01 RLC C 04A7 38F9 JR C,$04A2 04A9 0EFF LD C,$FF 04AB CD8601 CALL $0186 04AE 1897 JR $0447 04B0 CD4603 CALL $0346 04B3 71 LD (HL),C 04B4 7E LD A,(HL) 04B5 A9 XOR C 04B6 C47303 CALL NZ,$0373 04B9 23 INC HL 04BA 1B DEC DE 04BB 7A LD A,D 04BC B3 OR E 04BD 20F4 JR NZ,$04B3 04BF C5 PUSH BC 04C0 0608 LD B,$08 04C2 21065B LD HL,$5B06 04C5 7E LD A,(HL) 04C6 CD8B03 CALL $038B 04C9 23 INC HL 04CA 7E LD A,(HL) 04CB CD8B03 CALL $038B 04CE 23 INC HL 04CF 3A025B LD A,($5B02) 04D2 EEFF XOR $FF 04D4 32025B LD ($5B02),A 04D7 10EC DJNZ $04C5 04D9 CD5B03 CALL $035B 04DC C1 POP BC 04DD 21015B LD HL,$5B01 04E0 3600 LD (HL),$00 04E2 21005B LD HL,$5B00 04E5 34 INC (HL) 04E6 C9 RET 04E7 01FF00 LD BC,$00FF 04EA CDCC01 CALL $01CC 04ED 0100FF LD BC,$FF00 04F0 CDCC01 CALL $01CC 04F3 C31D01 JP $011D 04F6 CD5003 CALL $0350 04F9 3A035B LD A,($5B03) 04FC 57 LD D,A 04FD 1E00 LD E,$00 04FF 79 LD A,C 0500 12 LD (DE),A 0501 260F LD H,$0F 0503 2E80 LD L,$80 0505 E5 PUSH HL 0506 62 LD H,D 0507 6B LD L,E 0508 E3 EX (SP),HL 0509 25 DEC H 050A 281C JR Z,$0528 050C 7D LD A,L 050D 07 RLCA 050E 6F LD L,A 050F 7C LD A,H 0510 D607 SUB $07 0512 7D LD A,L 0513 E3 EX (SP),HL 0514 3804 JR C,$051A 0516 AD XOR L 0517 6F LD L,A 0518 1802 JR $051C 051A AC XOR H 051B 67 LD H,A 051C 7E LD A,(HL) 051D A8 XOR B 051E C47303 CALL NZ,$0373 0521 1A LD A,(DE) 0522 A9 XOR C 0523 C47303 CALL NZ,$0373 0526 18E0 JR $0508 0528 E1 POP HL 0529 78 LD A,B 052A 12 LD (DE),A 052B 13 INC DE 052C 3A045B LD A,($5B04) 052F BA CP D 0530 20CD JR NZ,$04FF 0532 CD9501 CALL $0195 0535 C9 RET 0536 210080 LD HL,$8000 0539 54 LD D,H 053A 5D LD E,L 053B 74 LD (HL),H 053C 23 INC HL 053D 1B DEC DE 053E 7A LD A,D 053F B3 OR E 0540 20F9 JR NZ,$053B 0542 210080 LD HL,$8000 0545 54 LD D,H 0546 5D LD E,L 0547 7E LD A,(HL) 0548 AC XOR H 0549 C47303 CALL NZ,$0373 054C 23 INC HL 054D 1B DEC DE 054E 7A LD A,D 054F B3 OR E 0550 20F5 JR NZ,$0547 0552 CD9501 CALL $0195 0555 210080 LD HL,$8000 0558 54 LD D,H 0559 5D LD E,L 055A 75 LD (HL),L 055B 23 INC HL 055C 1B DEC DE 055D 7A LD A,D 055E B3 OR E 055F 20F9 JR NZ,$055A 0561 210080 LD HL,$8000 0564 54 LD D,H 0565 5D LD E,L 0566 7E LD A,(HL) 0567 AD XOR L 0568 C47303 CALL NZ,$0373 056B 23 INC HL 056C 1B DEC DE 056D 7A LD A,D 056E B3 OR E 056F 20F5 JR NZ,$0566 0571 CD9501 CALL $0195 0574 C31D01 JP $011D 0577 0600 LD B,$00 0579 CD5A02 CALL $025A 057C 06FF LD B,$FF 057E CD5A02 CALL $025A 0581 C31D01 JP $011D 0584 CD5003 CALL $0350 0587 3A035B LD A,($5B03) 058A 67 LD H,A 058B 2E00 LD L,$00 058D 78 LD A,B 058E 2F CPL 058F 77 LD (HL),A 0590 CD4603 CALL $0346 0593 7E LD A,(HL) 0594 23 INC HL 0595 1B DEC DE 0596 7A LD A,D 0597 B3 OR E 0598 20F9 JR NZ,$0593 059A 3A035B LD A,($5B03) 059D 67 LD H,A 059E 2E00 LD L,$00 05A0 7E LD A,(HL) 05A1 2F CPL 05A2 A8 XOR B 05A3 C47303 CALL NZ,$0373 05A6 CD9501 CALL $0195 05A9 C9 RET 05AA 01FF00 LD BC,$00FF 05AD CD8F02 CALL $028F 05B0 0100FF LD BC,$FF00 05B3 CD8F02 CALL $028F 05B6 C31D01 JP $011D 05B9 CD5003 CALL $0350 05BC 3A035B LD A,($5B03) 05BF 67 LD H,A 05C0 2E00 LD L,$00 05C2 3A035B LD A,($5B03) 05C5 57 LD D,A 05C6 1E00 LD E,$00 05C8 71 LD (HL),C 05C9 1A LD A,(DE) 05CA A8 XOR B 05CB C46603 CALL NZ,$0366 05CE 7E LD A,(HL) 05CF C47303 CALL NZ,$0373 05D2 1C INC E 05D3 20F4 JR NZ,$05C9 05D5 14 INC D 05D6 3A045B LD A,($5B04) 05D9 BA CP D 05DA 20ED JR NZ,$05C9 05DC 70 LD (HL),B 05DD 2C INC L 05DE 20E2 JR NZ,$05C2 05E0 24 INC H 05E1 3A045B LD A,($5B04) 05E4 BC CP H 05E5 20DB JR NZ,$05C2 05E7 C39501 JP $0195 05EA 0613 LD B,$13 05EC CD5003 CALL $0350 05EF 110000 LD DE,$0000 05F2 3A045B LD A,($5B04) 05F5 67 LD H,A 05F6 2E00 LD L,$00 05F8 2B DEC HL 05F9 36C9 LD (HL),$C9 05FB 21DC02 LD HL,$02DC 05FE E5 PUSH HL 05FF 3A035B LD A,($5B03) 0602 67 LD H,A 0603 2E00 LD L,$00 0605 E9 JP (HL) 0606 7A LD A,D 0607 CD8B03 CALL $038B 060A 7B LD A,E 060B CD8B03 CALL $038B 060E C31D01 JP $011D 0611 CDD203 CALL $03D2 0614 210000 LD HL,$0000 0617 E5 PUSH HL 0618 110008 LD DE,$0800 061B E3 EX (SP),HL 061C 4E LD C,(HL) 061D 23 INC HL 061E 1B DEC DE 061F E3 EX (SP),HL 0620 0608 LD B,$08 0622 CB01 RLC C 0624 9F SBC A,A 0625 C5 PUSH BC 0626 47 LD B,A 0627 7D LD A,L 0628 E640 AND $40 062A D601 SUB $01 062C 9F SBC A,A 062D A8 XOR B 062E 47 LD B,A 062F 7C LD A,H 0630 E601 AND $01 0632 D601 SUB $01 0634 9F SBC A,A 0635 A8 XOR B 0636 47 LD B,A 0637 7C LD A,H 0638 E608 AND $08 063A D601 SUB $01 063C 9F SBC A,A 063D A8 XOR B 063E 47 LD B,A 063F 7C LD A,H 0640 E680 AND $80 0642 D601 SUB $01 0644 9F SBC A,A 0645 A8 XOR B 0646 07 RLCA 0647 CB15 RL L 0649 CB14 RL H 064B C1 POP BC 064C 10D4 DJNZ $0622 064E 7B LD A,E 064F B2 OR D 0650 20C9 JR NZ,$061B 0652 7C LD A,H 0653 CD8B03 CALL $038B 0656 7D LD A,L 0657 CD8B03 CALL $038B 065A 3A025B LD A,($5B02) 065D EEFF XOR $FF 065F 32025B LD ($5B02),A 0662 210000 LD HL,$0000 0665 E3 EX (SP),HL 0666 7C LD A,H 0667 E3 EX (SP),HL 0668 FE40 CP $40 066A 20AC JR NZ,$0618 066C E1 POP HL 066D C31D01 JP $011D 0670 3A035B LD A,($5B03) 0673 67 LD H,A 0674 2E00 LD L,$00 0676 110040 LD DE,$4000 0679 C9 RET 067A CD4603 CALL $0346 067D 70 LD (HL),B 067E 23 INC HL 067F 1B DEC DE 0680 7A LD A,D 0681 B3 OR E 0682 20F9 JR NZ,$067D 0684 C9 RET 0685 21065B LD HL,$5B06 0688 0610 LD B,$10 068A AF XOR A 068B 77 LD (HL),A 068C 23 INC HL 068D 10FC DJNZ $068B 068F C9 RET 0690 32055B LD ($5B05),A 0693 7B LD A,E 0694 BD CP L 0695 2003 JR NZ,$069A 0697 7A LD A,D 0698 BC CP H 0699 C8 RET Z 069A 3A055B LD A,($5B05) 069D DD21065B LD IX,$5B06 06A1 0608 LD B,$08 06A3 1F RRA 06A4 3008 JR NC,$06AE 06A6 DD3401 INC (IX+$01) 06A9 2003 JR NZ,$06AE 06AB DD3400 INC (IX+$00) 06AE DD23 INC IX 06B0 DD23 INC IX 06B2 10EF DJNZ $06A3 06B4 C9 RET 06B5 F5 PUSH AF 06B6 1F RRA 06B7 1F RRA 06B8 1F RRA 06B9 1F RRA 06BA CD9403 CALL $0394 06BD F1 POP AF 06BE E5 PUSH HL 06BF D5 PUSH DE 06C0 C5 PUSH BC 06C1 212805 LD HL,$0528 06C4 110600 LD DE,$0006 06C7 E60F AND $0F 06C9 2804 JR Z,$06CF 06CB 47 LD B,A 06CC 19 ADD HL,DE 06CD 10FD DJNZ $06CC 06CF E5 PUSH HL 06D0 3A005B LD A,($5B00) 06D3 57 LD D,A 06D4 E607 AND $07 06D6 0F RRCA 06D7 0F RRCA 06D8 0F RRCA 06D9 5F LD E,A 06DA 3A015B LD A,($5B01) 06DD B3 OR E 06DE 6F LD L,A 06DF 7A LD A,D 06E0 E658 AND $58 06E2 67 LD H,A 06E3 D1 POP DE 06E4 3A025B LD A,($5B02) 06E7 4F LD C,A 06E8 71 LD (HL),C 06E9 24 INC H 06EA 0606 LD B,$06 06EC 1A LD A,(DE) 06ED A9 XOR C 06EE 77 LD (HL),A 06EF 24 INC H 06F0 13 INC DE 06F1 10F9 DJNZ $06EC 06F3 71 LD (HL),C 06F4 21015B LD HL,$5B01 06F7 34 INC (HL) 06F8 C1 POP BC 06F9 D1 POP DE 06FA E1 POP HL 06FB C9 RET 06FC 210040 LD HL,$4000 06FF 0E00 LD C,$00 0701 71 LD (HL),C 0702 23 INC HL 0703 7C LD A,H 0704 FE58 CP $58 0706 20F9 JR NZ,$0701 0708 0E07 LD C,$07 070A 71 LD (HL),C 070B 23 INC HL 070C 7C LD A,H 070D FE5B CP $5B 070F 20F9 JR NZ,$070A 0711 AF XOR A 0712 32015B LD ($5B01),A 0715 32025B LD ($5B02),A 0718 3E40 LD A,$40 071A 32005B LD ($5B00),A 071D C9 RET 071E C5 PUSH BC 071F 01FE7F LD BC,$7FFE 0722 ED78 IN A,(C) 0724 2F CPL 0725 E61F AND $1F 0727 2004 JR NZ,$072D 0729 CB08 RRC B 072B 18F5 JR $0722 072D 4F LD C,A 072E AF XOR A 072F CB08 RRC B 0731 3004 JR NC,$0737 0733 C605 ADD A,$05 0735 18F8 JR $072F 0737 CB09 RRC C 0739 3803 JR C,$073E 073B 3C INC A 073C 18F9 JR $0737 073E C1 POP BC 073F C9 RET 0740 CDF403 CALL $03F4 0743 2606 LD H,$06 0745 6F LD L,A 0746 7E LD A,(HL) 0747 C9 RET ; ############# data block #2 ############### 0748 C2 DB $C2 0749 C5 DB $C5 074A C8 DB $C8 074B CB DB $CB 074C CE DB $CE 074D 83 DB $83 074E 86 DB $86 074F 89 DB $89 0750 8C DB $8C 0751 8F DB $8F 0752 42 DB $42 0753 45 DB $45 0754 48 DB $48 0755 4B DB $4B 0756 4E DB $4E 0757 01 DB $01 0758 04 DB $04 0759 07 DB $07 075A 0A DB $0A 075B 0D DB $0D 075C 1C DB $1C 075D 19 DB $19 075E 16 DB $16 075F 13 DB $13 0760 10 DB $10 0761 5D DB $5D 0762 5A DB $5A 0763 57 DB $57 0764 54 DB $54 0765 51 DB $51 0766 9E DB $9E 0767 9B DB $9B 0768 98 DB $98 0769 95 DB $95 076A 92 DB $92 076B DD DB $DD 076C DA DB $DA 076D D7 DB $D7 076E D4 DB $D4 076F D1 DB $D1 0770 3C DB $3C 0771 46 DB $46 0772 4A DB $4A 0773 52 DB $52 0774 62 DB $62 0775 3C DB $3C 0776 08 DB $08 0777 18 DB $18 0778 08 DB $08 0779 08 DB $08 077A 08 DB $08 077B 1C DB $1C 077C 3C DB $3C 077D 42 DB $42 077E 04 DB $04 077F 18 DB $18 0780 20 DB $20 0781 7E DB $7E 0782 38 DB $38 0783 44 DB $44 0784 08 DB $08 0785 04 DB $04 0786 42 DB $42 0787 3C DB $3C 0788 04 DB $04 0789 08 DB $08 078A 10 DB $10 078B 24 DB $24 078C 7E DB $7E 078D 04 DB $04 078E 7E DB $7E 078F 40 DB $40 0790 7C DB $7C 0791 02 DB $02 0792 42 DB $42 0793 3C DB $3C 0794 3C DB $3C 0795 42 DB $42 0796 40 DB $40 0797 7C DB $7C 0798 42 DB $42 0799 3C DB $3C 079A 7E DB $7E 079B 02 DB $02 079C 04 DB $04 079D 08 DB $08 079E 10 DB $10 079F 10 DB $10 07A0 3C DB $3C 07A1 42 DB $42 07A2 3C DB $3C 07A3 42 DB $42 07A4 42 DB $42 07A5 3C DB $3C 07A6 3C DB $3C 07A7 42 DB $42 07A8 3E DB $3E 07A9 02 DB $02 07AA 42 DB $42 07AB 3C DB $3C 07AC 3C DB $3C 07AD 42 DB $42 07AE 42 DB $42 07AF 42 DB $42 07B0 7E DB $7E 07B1 42 DB $42 07B2 7C DB $7C 07B3 42 DB $42 07B4 7C DB $7C 07B5 42 DB $42 07B6 42 DB $42 07B7 7C DB $7C 07B8 3C DB $3C 07B9 42 DB $42 07BA 40 DB $40 07BB 40 DB $40 07BC 42 DB $42 07BD 3C DB $3C 07BE 7C DB $7C 07BF 42 DB $42 07C0 42 DB $42 07C1 42 DB $42 07C2 42 DB $42 07C3 7C DB $7C 07C4 7E DB $7E 07C5 40 DB $40 07C6 78 DB $78 07C7 40 DB $40 07C8 40 DB $40 07C9 7E DB $7E 07CA 7E DB $7E 07CB 40 DB $40 07CC 40 DB $40 07CD 78 DB $78 07CE 40 DB $40 07CF 40 DB $40 ; ############# data block #3 ############### 07D0 00 DB $00 07D1 5A DB $5A 07D2 58 DB $58 07D3 43 DB $43 07D4 56 DB $56 07D5 41 DB $41 07D6 53 DB $53 07D7 44 DB $44 07D8 46 DB $46 07D9 47 DB $47 07DA 51 DB $51 07DB 57 DB $57 07DC 45 DB $45 07DD 52 DB $52 07DE 54 DB $54 07DF 31 DB $31 07E0 32 DB $32 07E1 33 DB $33 07E2 34 DB $34 07E3 35 DB $35 07E4 30 DB $30 07E5 39 DB $39 07E6 38 DB $38 07E7 37 DB $37 07E8 36 DB $36 07E9 50 DB $50 07EA 4F DB $4F 07EB 49 DB $49 07EC 55 DB $55 07ED 59 DB $59 07EE 0D DB $0D 07EF 4C DB $4C 07F0 4B DB $4B 07F1 4A DB $4A 07F2 48 DB $48 07F3 20 DB $20 07F4 00 DB $00 07F5 4D DB $4D 07F6 4E DB $4E 07F7 42 DB $42 07F8 38 DB $38 07F9 31 DB $31 07FA 2A DB $2A 07FB 23 DB $23 07FC 1C DB $1C 07FD 15 DB $15 07FE 0E DB $0E 07FF 07 DB $07